namespace Sedge.Core.Utils
{
	public delegate void LockingEventHandler(bool isLocked);

	public delegate void BreakedLockHandler();

	public interface IViewManager
	{
		event LockingEventHandler LockingChanged;
		bool IsLocked { get; }
		bool CleanOnExit { get; set; }

		void LockView(BreakedLockHandler breakedLockHandler);
		void UnlockView();
		void BreakLock();
	}
}